Skip to content

Feature/chia theme variants and overview - #3028

Open
BrandtH22 wants to merge 20 commits into
mainfrom
feature/chia-theme-variants-and-overview
Open

Feature/chia theme variants and overview#3028
BrandtH22 wants to merge 20 commits into
mainfrom
feature/chia-theme-variants-and-overview

Conversation

@BrandtH22

@BrandtH22 BrandtH22 commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Note

Medium Risk
Large cross-cutting UI/theming change with a new default look and persisted preference handling; variant IDs are whitelisted, limiting injection risk, but visual regressions across themes/modes are the main concern.

Overview
Introduces a multi-variant theming system in @chia-network/core with whitelisted options Chia (new default), Classic, and Autumn (field), resolved through a central registry and applied from the GUI via resolveAppTheme together with light/dark mode.

Users can switch variants in Settings → Color Theme (ThemeVariantToggle); the choice is stored in local app prefs and validated with parseThemeVariantId so unknown values cannot drive dynamic loading.

Chia variant adds 2025 enterprise palette tokens, Poppins/Inter typography, variant-specific MUI themes, and GUI-bundled wordmark/icon assets wired through ThemeAssetsProvider and ThemedChia components (replacing static @chia-network/icons logos in key screens).

Shared UI is updated to follow the active theme: sidebar/drawer styling, selected states on buttons and list items, line chart colors from primary, and state/semantic colors from the palette rather than hard-coded greens.

Legacy light/dark/default theme entry points remain as deprecated re-exports of the Autumn (field) variant. A design:sandbox script and optional WalletConnect command-registry parity test (disabled) are included in the GUI package.

Reviewed by Cursor Bugbot for commit f744f24. Bugbot is set up for automated code reviews on this repo. Configure here.

BrandtH22 and others added 9 commits June 4, 2026 09:52
Introduce an Overview landing page for full-node mode with live wallet, node, farm, and plot status while preserving all existing routes. Fix useStandardWallet to query the actual standard wallet id, and allow NFT fullscreen preview for non-image assets with contain fit in the dialog.

Co-authored-by: Cursor <cursoragent@cursor.com>
Port the visual layer from the community GUI mod (akita-nft-preview-dialog branch): amber/green palette, dashboard chrome, sidebar, cards, tables, charts, and asset tinting. Add a browser design sandbox (npm run design:sandbox) for layout checks without a daemon. De-brand sample copy; keep the existing Overview and functional changes on this branch.

Co-authored-by: Cursor <cursoragent@cursor.com>
Introduce a shared theme registry with per-variant palettes and typography so the GUI can switch between Classic, Autumn (field), and Chia branding at runtime.

Co-authored-by: Cursor <cursoragent@cursor.com>
Expose Classic, Autumn, and Chia as selectable color themes in Settings, defaulting to Chia.

Co-authored-by: Cursor <cursoragent@cursor.com>
Update sidebar, cards, buttons, and charts to use variant-aware colors and readable selection states across Classic, Autumn, and Chia themes.

Co-authored-by: Cursor <cursoragent@cursor.com>
Load variant-specific logos and illustrations via ThemeAssetsContext so Classic, Autumn, and Chia each render matching artwork.

Co-authored-by: Cursor <cursoragent@cursor.com>
Trim hero copy, fix overview card icon sizing, and add a hollow grid icon aligned with the sidebar icon set.

Co-authored-by: Cursor <cursoragent@cursor.com>
Style token list selection and manage-tokens controls for readable contrast under the Chia palette.

Co-authored-by: Cursor <cursoragent@cursor.com>
Align chart series and preview accents with the active theme variant primary palette.
@BrandtH22
BrandtH22 requested a review from a team as a code owner August 13, 2026 14:40
Comment thread packages/core/src/theme/variants/chia/light.ts
@socket-security

socket-security Bot commented Aug 13, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Added@​fontsource/​poppins@​5.0.8100100858390
Added@​fontsource/​inter@​5.0.8100100858490

View full report

@socket-security

socket-security Bot commented Aug 13, 2026

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn High
License policy violation: npm @fontsource/inter under OFL-1.1

License: OFL-1.1 - The applicable license policy does not permit this license (5) (npm metadata)

License: OFL-1.1 - The applicable license policy does not permit this license (5) (package/package.json)

License: OFL-1.1 - The applicable license policy does not permit this license (5) (package/LICENSE)

From: packages/core/package.jsonnpm/@fontsource/inter@5.0.8

ℹ Read more on: This package | This alert | What is a license policy violation?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Find a package that does not violate your license policy or adjust your policy to allow this package's license.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@fontsource/inter@5.0.8. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn High
License policy violation: npm @fontsource/poppins under OFL-1.1

License: OFL-1.1 - The applicable license policy does not permit this license (5) (npm metadata)

License: OFL-1.1 - The applicable license policy does not permit this license (5) (package/package.json)

License: OFL-1.1 - The applicable license policy does not permit this license (5) (package/LICENSE)

From: packages/core/package.jsonnpm/@fontsource/poppins@5.0.8

ℹ Read more on: This package | This alert | What is a license policy violation?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Find a package that does not violate your license policy or adjust your policy to allow this package's license.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@fontsource/poppins@5.0.8. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

@BrandtH22
BrandtH22 force-pushed the feature/chia-theme-variants-and-overview branch from cfbdbbf to f744f24 Compare August 13, 2026 15:14
return paletteColor(theme, 'sidebarSelectedFill');
}
return paletteColor(theme, 'sidebarBackground');
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Selected sidebar fill blends away

Medium Severity

selectedFill falls back to sidebarBackground when sidebarSelectedFill is missing, while the drawer paper is now also painted with sidebarBackground. For classic and field variants that omit sidebarSelectedFill, the selected item fill matches the drawer and no longer reads as selected (only the border remains).

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit f744f24. Configure here.

@emlowe emlowe closed this Aug 19, 2026
@emlowe emlowe reopened this Aug 19, 2026

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

There are 2 total unresolved issues (including 1 from previous review).

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Want fixes drafted automatically? Bugbot Autofix can create code changes for findings. A team admin can enable Autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit f744f24. Configure here.

},
);
/** @deprecated Import via theme registry. Kept for compatibility with older imports. */
export { default } from './variants/field/dark';

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wrong deprecated theme re-exports

Medium Severity

The deprecated light/dark entry points claim compatibility with older imports, but they now re-export the Autumn field variant. The previous modules were the original green palette, which this PR moved to classic. Callers that still import light or dark from @chia-network/core get amber field styling instead of the prior appearance.

Additional Locations (2)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit f744f24. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants